﻿using Joy.Erp.BasicArchives.Core;
using Joy.Erp.BasicArchives.Core.UniqueCodes;
using Joy.Erp.BasicArchives.Staff;
using Joy.Erp.BasicArchives.Suppliers;
using System;
using Volo.Abp.Domain.Entities;
using Volo.Abp.MultiTenancy;

namespace Joy.Erp.BasicArchives.Receipt
{
    /// <summary>
    /// 收货单
    /// </summary>
    public class Receivement : DocumentAggregateRoot<ReceivementLine>, IMultiTenant, IUniqueCode, IHasConcurrencyStamp
    {
        /// <summary>
        /// 所属租户
        /// </summary>
        public Guid? TenantId { get; set; }

        /// <summary>
        /// 单据类型
        /// </summary>
        public Guid OrderTypeId { get; set; }

        /// <summary>
        /// 单据类型
        /// </summary>
        public ReceivementType OrderType { get; set; }

        /// <summary>
        /// 供应商
        /// </summary>
        public Guid? SupplierId { get; set; }

        /// <summary>
        /// 供应商
        /// </summary>
        public Supplier Supplier { get; set; }

        /// <summary>
        /// 业务员
        /// </summary>
        public Guid? OperatorId { get; set; }

        /// <summary>
        /// 业务员
        /// </summary>
        public Operator Operator { get; set; }

        /// <summary>
        /// 到货日期
        /// </summary>
        public DateTime? ArriveDate { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        public string Mark { get; set; }
    }
}
